Golf equipment identification and fitting system

ABSTRACT

Systems and methods for identifying golf equipment. The system may include one or more performance tracking devices, such as an optical sensor system or a radar sensor system for tracking at least one of a golf club swing or a golf ball flight. The system also may include at least one processor and memory storing instructions that, when executed by the at least one processor, cause the system to perform a set of operations. The operations include receiving current dynamic input for a golf shot from a golfer and current static input for the golfer. The operations also include executing a trained machine-learning model based on the received current dynamic input and current static input to generate predicted golf club properties and/or predicted golf ball properties for the golfer. The predicted golf club properties and/or predicted golf ball properties are displayed on a connected display.

BACKGROUND

Having the proper equipment to play any sport can be a factor in howwell an athlete will perform. For example, proper equipment in the sportof golf may allow a golfer to hit the golf ball longer, straighter, andmore consistently—thus improving the golfer's performance and overallscore. Fitting the proper equipment for a golfer, however, has becomeincreasingly difficult. As the available types and adjustability of golfclubs have grown, configurations for such golf clubs have becomeincreasingly complex. For instance, modern drivers, fairway metals, andhybrid clubs frequently have adjustable components, such as adjustableweights or hosel systems, that allow a golfer to more finely tune thegolf club to best fit the golfer's own swing characteristics. The numberof features and characteristics that can be tracked for a golfer's swinghave also dramatically increased. Accordingly, determining properequipment and settings for each individual golfer is a particularlydifficult task.

It is with respect to these and other general considerations that theaspects disclosed herein have been made. Also, although relativelyspecific problems may be discussed, it should be understood that theexamples should not be limited to solving the specific problemsidentified in the background or elsewhere in this disclosure.

SUMMARY

Examples of the present disclosure describe systems and methodsidentification of golf equipment for a golfer through the use of trainedmachine-learning technology. In an aspect, the technology relates to asystem for identifying golf equipment. The system includes one or moreperformance tracking devices, wherein the one or more performancetracking devices include at least one of an optical sensor system or aradar sensor system for tracking at least one of a golf club swing or agolf ball flight, wherein the one or more performance tracking devicesare configured to generate at least one of golf club swingcharacteristics of the golf club swing or golf ball flightcharacteristics of the golf ball flight. The system also includes adisplay operatively connected to the one or more performance trackingdevices; at least one input device for receiving static input; and atleast one processor and memory operatively connected to the one or moreperformance tracking devices, the display, and the at least one inputdevice. The memory stores instructions that, when executed by the atleast one processor, cause the system to perform a set of operations.The set of operations include receive, from the one or more performancetracking devices, first current dynamic input for a first golf shot froma golfer, wherein the first current dynamic input includes the at leastone of the golf club swing characteristics or the golf ball flightcharacteristics for the first golf shot; and receive, via the at leastone input device, current static input for the golfer, wherein thecurrent static input is at least one of a golfer characteristic or agolf-equipment characteristic. The set of operations also includeexecute a trained machine-learning model based on the received firstcurrent dynamic input and current static input to generate at least oneof first predicted golf club properties or first predicted golf ballproperties for the golfer, wherein the trained machine-learning modelhas been trained from a set of prior dynamic inputs, prior staticinputs, and at least one of prior golf club swing characteristics orprior golf ball flight characteristics; and display, on the display, theat least one of the first predicted golf club properties or the firstpredicted golf ball properties for the golfer.

In an example, the one or more performance tracking devices include atleast one of a swing tracker or a ball-flight tracker. In anotherexample, the one or more performance tracking devices include at leastone of a swing tracker or a ball-flight tracker. In yet another example,the current static input includes the golfer characteristic, wherein thegolfer characteristic includes at least one of gender, height, weight,age, handicap, handedness, arm length, or hand size. In still anotherexample, the current static input includes the golf-equipmentcharacteristic, wherein the golf-equipment characteristic includes atleast one of club head model, club head lie, club head loft, club headadjustable settings, club head grind, club head bounce, shaft flex,shaft length, shaft torque, grip size, golf ball model, golf ballcompression, golf ball cover material, or golf ball number of layers. Instill yet another example, the first current dynamic input includes golfclub swing characteristics, the golf club swing characteristicsincluding at least one of swing data of the golf club, force data,motion-capture data, or electromyography data.

In another example, the swing data of the golf club includes at leastone of club speed, attack angle, path, dynamic loft, face angle, droop,face and loft spin, or impact location; the force data includes at leastone of vertical force left foot, vertical force right foot, verticalweight shift, vertical force magnitude, toe force, heel force, torqueright foot, torque left foot, torque, center of pressure, center mass,or moment arm; the motion-capture data includes at least one of wristrotation, hip angle, hip translation, torso angle, torso translation,spine rotation, or upper body position; and the electromyography dataincludes at least one of leg muscle group electromyography data, torsomuscle group electromyography data, arm muscle group electromyographydata, integrated electromyography data, root-mean squareelectromyography data, peak amplitude electromyography data, or medianpower frequency electromyography data. In yet another example, the golfclub swing characteristics include the swing data of the golf club, theforce data, and the motion-capture data. In still another example, theset of operations further includes: receive, from the one or moreperformance tracking devices, second current dynamic input for a secondgolf shot from a golfer, wherein the second shot from the golfer is withat least one of a golf club having the first predicted golf clubproperties or a golf ball having the first predicted golf ballproperties; update the current static input for the golfer based on theat least one of the golf club having the predicted golf club propertiesor the golf ball having the first predicted golf ball properties;execute the trained machine-learning model based on the received secondcurrent dynamic input and the updated current static input to generateat least one of second predicted golf club properties or secondpredicted golf ball properties for the golfer; and display, on thedisplay, the at least one of the second predicted golf club propertiesor the second predicted golf ball properties for the golfer. In stillyet another example, the set of operations further includes reinforcingthe trained machine-learning model based on the at least two or more ofthe received current static input, the updated current static input, thefirst current dynamic input, the second current dynamic input, the firstpredicted golf club properties, the second predicted golf properties,the first predicted golf ball properties, or the second predicted golfball properties.

In another example, the set of operations further includes: receiving,via the at least one input device, confirmation input confirming one ormore of the first predicted golf club properties, the second predictedgolf properties, the first predicted golf ball properties, or the secondpredicted golf ball properties; and wherein the reinforcing of thetrained machine-learning model is further based on the confirmationinput. In yet another example, the set of operations further includes:receiving, via the at least one input device, rejection input rejectingone or more of the first predicted golf club properties, the secondpredicted golf properties, the first predicted golf ball properties, orthe second predicted golf ball properties; and wherein the reinforcingof the trained machine-learning model is further based on the rejectioninput. In still yet another example, the input device is a touchscreenof the display.

In another aspect, the technology relates to a method, executed by oneor more processors, for identifying golf equipment. The method includesreceiving static input, via an input device operatively connected to theone or more processors, wherein the static input is at least one of agolfer characteristic or a golf-equipment characteristic; and receiving,from one or more performance tracking devices, first current dynamicinput for a first golf shot from a golfer, wherein the first currentdynamic input includes at least one of golf club swing characteristicsor golf ball flight characteristics for a first golf shot from thegolfer. The method further includes executing, by the one or moreprocessors, a trained machine-learning model based on the received firstcurrent dynamic input and static input to generate at least one of firstpredicted golf club properties or first predicted golf ball propertiesfor the golfer, wherein the trained machine-learning model has beentrained from a set of prior dynamic inputs, prior static inputs, and atleast one of prior golf club swing characteristics or prior golf ballflight characteristics; and displaying, on a display operativelyconnected to the one or more processors, the at least one of the firstpredicted golf club properties or the first predicted golf ballproperties for the golfer.

In an example, the method further includes: receiving, via the inputdevice, a confirmation input confirming one or more of the firstpredicted golf club properties or the first predicted golf ballproperties; and reinforcing the trained machine-learning model based onthe confirmation input and at least one of the static input or the firstcurrent dynamic input. In another example, the method further includesreceiving, via the input device, a rejection input rejecting one or moreof the first predicted golf club properties or the first predicted golfball properties; and reinforcing the trained machine-learning modelbased on the rejection input and at least one of the static input andthe first current dynamic input. In yet another example, the methodfurther includes: receiving, from the one or more performance trackingdevices, second current dynamic input for a second golf shot from thegolfer, wherein the second shot from the golfer is with at least one ofa golf club having the first predicted golf club properties or a golfball having the first predicted golf ball properties; updating, by theone or more processors, the static input for the golfer based on the atleast one of a golf club having the predicted golf club properties orthe golf ball having the first predicted golf ball properties;executing, by the one or more processors, the trained machine-learningmodel based on the received second current dynamic input and the updatedstatic input to generate at least one of second predicted golf clubproperties or second predicted golf ball properties for the golfer; anddisplaying, on the display, the at least one of the second predictedgolf club properties or the second predicted golf ball properties forthe golfer. In still another example, the golfer characteristic includesat least one of gender, height, weight, age, handicap, handedness, armlength, or hand size; the golf-equipment characteristic includes atleast one of club head model, club head lie, club head loft, club headadjustable settings, club head grind, club head bounce, shaft flex,shaft length, shaft torque, grip size, golf ball model, golf ballcompression, golf ball cover material, or golf ball number of layers;and the golf club swing characteristics include at least one of swingdata of the golf club, force data, motion-capture data, orelectromyography data. In such an example, the swing data of the golfclub includes at least one of club speed, attack angle, path, dynamicloft, face angle, droop, face and loft spin, or impact location; theforce data includes at least one of vertical force left foot, verticalforce right foot, vertical weight shift, vertical force magnitude, toeforce, heel force, torque right foot, torque left foot, torque, centerof pressure, center mass, or moment arm; the motion-capture dataincludes at least one of wrist rotation, hip angle, hip translation,torso angle, torso translation, spine rotation, or upper body position;and the electromyography data includes at least one of leg muscle groupelectromyography data, torso muscle group electromyography data, armmuscle group electromyography data, integrated electromyography data,root-mean square electromyography data, peak amplitude electromyographydata, or median power frequency electromyography data.

In another example, the trained machine-learning model generates anidentification of a tour professional that most closely matches thereceived static input and first current dynamic input. In yet anotherexample, the trained machine-learning model based generates the firstpredicted golf club properties and first predicted golf ball propertiesfor the golfer.

In another aspect, the technology relates to a method, executed by oneor more processors, for training a machine-learning system to identifygolf equipment. The method includes aggregating shot data for aplurality of golf shots, wherein the shot data includes: prior staticinputs and prior dynamic inputs for the plurality of golf shots; andprior golf equipment fitting data correlated to the prior static inputsand prior dynamic inputs, wherein the golf equipment fitting dataincludes at least one of prior predicted golf club properties or priorpredicted golf ball properties. The method further includes separatingthe aggregated shot data into a training data set and a test data set;executing a supervised training of a machine-learning model based on thetraining data set; and testing the trained machine-learning model withthe test data set to generate test results. The method further includesdetermining that the test results from the trained machine-learningmodel are within a predetermined tolerance; and based on thedetermination that the test results are within a predeterminedtolerance, storing the trained machine-learning model. The methodfurther includes receiving current static input for a live golf shotfrom a golfer; receiving current dynamic input for the live golf shotfrom a golfer, wherein the current dynamic input includes the at leastone of golf club swing characteristics or golf ball flightcharacteristics for the live golf shot; executing the trainedmachine-learning model based on the received current dynamic input andcurrent static input to generate at least one of predicted golf clubproperties or predicted golf ball properties for the golfer; anddisplaying the at least one of the predicted golf club properties or thepredicted golf ball properties for the golfer.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter. Additionalaspects, features, and/or advantages of examples will be set forth inpart in the description which follows and, in part, will be apparentfrom the description, or may be learned by practice of the disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting and non-exhaustive examples are described with reference tothe following figures.

FIG. 1A depicts an example of a golf equipment identification system.

FIG. 1B depicts an example of a suitable operating environment forincorporation into the golf club configuration detection system of FIG.1A.

FIG. 2 depicts a visualization of an example machine-learning system foridentifying golf equipment for an individual golfer.

FIG. 3 depicts an example of a method for training a machine-learningsystem to identify golf equipment for an individual golfer.

FIG. 4 depicts an example of a method for executing a trainedmachine-learning system to identify golf equipment for an individualgolfer.

DETAILED DESCRIPTION

As discussed above, identifying proper golf equipment for an individualgolfer has become increasingly complex and difficult. Not only is eachgolf club itself different, each golf club may also have interchangeableor adjustable shafts, configurable hosels, adjustable weights, andadjustable dials for changing lie angle, among other adjustment systems.Moreover, golf-swing and ball-flight trackers and monitors are able tocapture significantly more data about a golf swing and shot than everbefore. Those trackers and monitors, however, are limited in that theyare not able to identify equipment for a golfer based on the capturedgolf-swing or ball-flight characteristics. The present golf equipmentidentification systems and methods provide for improvements to thattechnology by enhancing monitoring and tracking systems to identify andpredict golf club and ball equipment for the individual golfer who isbeing monitored or tracked. For example, the present technologyintegrates golf-swing and ball-flight monitors that utilize an opticalsensor system and/or a radar sensor system with machine-learningtechnology to automatically identify golf equipment for the golfer basedon the data captured from the monitors.

FIG. 1A depicts an example of a golf equipment identification system100. The golf equipment identification system includes a plurality ofperformance tracking devices 102. The performance tracking devices 102are used to track the performance or other characteristics of a golfswing, golf shot, or both. For example, the performance tracking devices102 may include a ball-flight tracker 104, a golf-swing tracker 106, andother player monitors 108. The ball-flight tracker 104 tracks the flightcharacteristics of a golf ball struck by the golf club in the detectedconfiguration state. The flight characteristics may include ball speed,trajectory, spin, impact angle, carry, roll, total distance, and otherball-flight characteristics. The swing tracker 106 tracks swingcharacteristics of the golf club as it is being swung, such as swingpath, face angle, club head speed, loft, and other swingcharacteristics. In some examples, swing tracker 106 and the ball-flighttracker 104 may be provided in the same device. An example of a launchmonitor that includes both club-swing and ball-flight trackingcapabilities is described in U.S. Pat. No. 7,395,696, titled “LaunchMonitor,” and assigned to Acushnet Company of Fairhaven, Mass., theentirety of which is incorporated herein by reference. U.S. Pat. No.7,395,696 also describes suitable interfaces for displaying dataobtained by the launch monitor.

The other player monitors 108 may include wearable devices that capturemovement or other characteristics of a golfer, such as vests, wristwatches/devices, and other wearable sensors. For example, a wearableelectromyography (EMG) sensor may be used. The player monitors 108 mayalso include one or more motion-capture devices that capture the motionof the golfer during a swing. The motion-capture devices may beinertial, electromagnetic, and/or optical devices capable of capturingmotion. Motion-capture devices may also include smart phones, or similarsmart devices, that have sensors capable of tracking the motion of agolfer when the smart phone is in the pocket, or worn on the golfer inany fashion. Similarly, optical-motion-capture devices may include acamera, such as a camera in a smart phone or similar device. The playermonitors 108 may also include force plates or insole sensors to detector monitor force on or from each foot of the golfer. The player monitors108 may be worn by, or otherwise attached to, the golfer and/or thegolfer's equipment, such as the golfer's golf bag, golf club(s), orother accessories.

Each of the performance tracking devices 102 generates an output signalrepresentative of the data captured by each of the respectiveperformance tracking devices 102. The performance tracking devices 102capture or measure physical phenomena, light, heat, motion, moisture,pressure, or other environmental phenomena. For instance,electromagnetic waves in the infrared, visible, and/or radio-frequencyspectrum, are captured through optical or other electromagnetic sensors.Sound or pressure waves may also be captured through radar sensorsincorporated into the performance tracking devices 102. The performancetracking devices 102 transform those captured physical phenomena intoanalog and/or digital signals capable of being stored in memory andprocessed by one or more processors. For instance, the signal may be inthe form of modulated voltages that are output from the sensors of theperformance tracking devices 102. The output signals from theperformance tracking devices 102 are received by the data and signalprocessing components 110, which may include at least one processor andmemory storing instructions for data and signal processing. Forinstance, data and signal processing components 110 may receive swingdata from the swing tracker 106 and ball-flight data from theball-flight tracker 104. The data and signal processing components 110may also process images or imaging data from the performance trackingdevices 102. The data and signal processing components 110 may processor otherwise convert that received data into a new format suitable fordisplay or input into other components for further processing.

The system 100 also includes a machine-learning model or component 114.The machine-learning component 114 processes dynamic inputs about golfswings and shots and static inputs about a golfer and the golfer'sequipment used for the golf shot to identify predicted, optimal golfequipment for the particular golfer. In general, dynamic inputs aboutgolf swings and shots are inputs that are generated from one or more ofthe performance tracking devices 102. Examples of dynamic inputs includedata items such as club speed and ball speed for a particular golf shot.The dynamic inputs may be provided to the machine-learning component 114by the data and signal processing components 110 after the data andsignal processing components 110 process the data received from theperformance tracking devices 102. In other examples, themachine-learning component 114 may receive dynamic inputs directly formthe performance tracking devices 102. In contrast, static inputs aboutthe golfer or equipment being used may be received through various inputmethods, including manual entry into the system 100. Examples of staticinputs include the golf club model, a golf ball model, and a golfer'sheight and weight. In some examples, the static inputs regarding golfequipment may be detected and/or received using the methods and systemsdiscussed in U.S. patent application Ser. No. 15/975,553, titled GolfClub Configuration Detection System and assigned to Acushnet Company ofFairhaven, Mass., the entirety of which is incorporated herein byreference. Additional examples of static and dynamic inputs arediscussed below with reference to FIG. 2. Based on the dynamic andstatic inputs, the machine-learning component 114 generates predictedoptimal equipment data for the golfer. The predicted equipment data mayinclude predicted, optimal golf club properties and/or predicted,optimal golf ball properties for the golfer.

The system 100 also includes performance and equipment database 112. Thedatabase 112 stores data regarding performance information andcorresponding equipment information. For example, the database 112 maystore aggregated prior-shot data for a plurality of golf shots by aplurality of different golfers. The shot data may include prior staticinputs and prior dynamic inputs as well as prior equipment datacorresponding to the prior static and dynamic inputs. The prior-shotdata may be from prior fitting session of a golfer. For example, aplayer may meet with a golf professional or fitting specialist to assistin selecting the best club for the golfer. During a fitting session,ball-flight and swing characteristics, among other dynamic inputs, maybe recorded. Static inputs may also be tracked. The golf professional orfitting specialist then determines the best golf equipment for thatgolfer. The dynamic and static inputs may then be stored in the databasealong with the correlated golf equipment determined by the golfprofessional or fitting specialist. The dynamic and static inputs may bestored as different arrays within the database. The prior dynamic andstatic inputs, as well as the correlated prior equipment data, may bestored in the database 112 in different manners depending on theparticular implementation or embodiment. In an example, the priordynamic and static inputs and the correlated prior equipment data may bestored in an object database. In such an example, the database may storea fitting event as an object and store the associated, prior dynamic andstatic inputs and prior equipment data for each fitting event in thecorresponding object. In another example, the prior dynamic and staticinputs and the correlated prior equipment data may be stored in arelational database. The prior dynamic and static inputs and thecorrelated prior equipment data may then be stored in rows and columnssuch that a particular row and/or column is associated with a particularprior fitting event. Other data storage technologies may also be used,such as hybrid object-relational databases. When a live fitting event isperformed using the trained machine-learning model 114, the currentdynamic and static inputs may also be stored in the database 112. Thepredicted golf equipment from the machine-learning model 114 may also bestored in the database 112 as correlated with the stored current dynamicand static inputs.

Each of the components of the golf equipment identification system 100may be housed or attached to a single housing, and in some examples,that single housing may be portable, such a cart or handheld device. Insome examples, the performance tracking devices 118 may be physicallyseparated, but remain operatively connected via a wired or wirelessinterface, from the remainder of the components of the system 100. Thesystem 100 may also include a power supply 116 to supply power to thecomponents of the system 100. In some examples, the power supply 116includes a battery and in some examples the power supply 116 may includea power cord for plugging into a traditional power outlet.

Components of the system 100 may also be integrated into portions of adriving range or practice facility. For example, one or more of theperformance tracking devices 102 may be integrated into a practice golfmat or directly into the ground of the driving range. The performancetracking devices 118 may also be operatively connected either wirelesslyor wired to the remainder of the system 100. The performance trackingdevices 118 may also be mounted adjacent a hitting area, such as a golfmat or a segment of a driving range.

FIG. 1B depicts an example of a suitable operating environment 150 forincorporation into the golf equipment identification system 100. Forexample, the operating environment may be suitable for incorporation anduse with the data and signal processing components 110 of the system100. In its most basic configuration, operating environment 150typically includes at least one processing unit 152 and memory 154.Depending on the exact configuration and type of computing device,memory 154 (storing instructions to perform the active monitoringembodiments disclosed herein) may be volatile (such as RAM),non-volatile (such as ROM, flash memory, etc.), or some combination ofthe two. This most basic configuration is illustrated in FIG. 1B bydashed line 156. Further, environment 150 may also include storagedevices (removable 158, and/or non-removable 160) including, but notlimited to, solid-state storage, magnetic or optical disks or tape.Similarly, environment 150 may also have input device(s) 164 such askeyboard, mouse, pen, voice input, touch input, etc. and/or outputdevice(s) 166 such as a display, speakers, printer, etc. For example,the environment 150 may include a touchscreen that allows for bothdisplay and input. The input devices 164 may also include one or moreantennas to detect signals emitted from the various the performancetracking devices 102. Also included in the environment may be one ormore communication connections 162, such as LAN, WAN, point to point,WIFI, BLUETOOTH, TCP/IP, etc. In embodiments, the connections may beoperable to facilitate point-to-point communications,connection-oriented communications, connectionless communications, etc.

Operating environment 150 typically includes at least some form ofcomputer readable media. Computer readable media can be any availablemedia that can be accessed by processing unit 152 or other devicescomprising the operating environment. By way of example, and notlimitation, computer readable media may comprise computer storage mediaand communication media. Computer storage media includes volatile andnonvolatile, removable and non-removable media implemented in any methodor technology for storage of information such as computer readableinstructions, data structures, program modules or other data. Computerstorage media includes, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disks (DVD) or other opticalstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or any other non-transitory medium thatcan be used to store the desired information. Computer storage mediadoes not include communication media.

Communication media embodies computer readable instructions, datastructures, program modules, or other data in a modulated data signalsuch as a carrier wave or other transport mechanism and includes anyinformation delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media includes wired media such as awired network or direct-wired connection, and wireless media such asacoustic, RF, infrared, microwave, and other wireless media.Combinations of the any of the above should also be included within thescope of computer readable media.

The operating environment 150 may be a single computer operating in anetworked environment using logical connections to one or more remotecomputers. The remote computer may be a personal computer, a server, arouter, a network PC, a peer device or other common network node, andtypically includes many or all of the elements described above as wellas others not so mentioned. The logical connections may include anymethod supported by available communications media.

FIG. 2 depicts a visualization of an example machine-learning system 200for identifying golf equipment for an individual golfer. Themachine-learning system 200 includes a machine-learning model 222 thathas been trained to receive static inputs 202 and dynamic inputs 210 toproduce predicted golf equipment 224. In an example, themachine-learning model 222 may be a neural network, such as a deepneural network, that has been trained on prior static and dynamicinputs, prior dynamic inputs, and prior golf equipment recommendationsor selections. For example, during supervised training, use of theneural network may include providing a set of prior dynamic and staticinputs to the neural network and providing the correlated prior golfequipment fitting data or recommendations. During training, the inputsto the neural networks are the prior dynamic and static inputs and theknown output is the correlated prior golf equipment fitting data orrecommendations. The neural network processes the inputs and comparesthe neural network's output to the known output. Weights and/or otherproperties of the neural network are then adjusted to reduce the errorbetween the network's output and the known output. When the neuralnetwork performs within a desired accuracy rate, the trained neuralnetwork may be used to produce outputs from input data that has not beenpreviously seen by the neural network and for which there are no knownoutputs. Different methods may be used for training the neural network,such as the Levenberg-Marquardt algorithm, back-propagation, Newton'smethod, quasi-Newton, gradient descent, and conjugate gradient, amongothers. Supervised and/or unsupervised training methods may be used forthe initial training of the machine-learning model 222. In addition,while in the above example the machine-learning model 222 is discussedas being a neural network, other types of machine-learning models mayalso be implemented. For instance, the machine-learning model 222 mayinclude a support vector machine (SVM), k-nearest neighbor, randomforest, regression, logistic regression, naïve Bayes classifier, lineardiscriminant analysis, decision trees; fine grain deep learning, coarsegrain deep learning, fuzzy logic, Apriori algorithm, Markov decisionprocess, or gradient boosting process. Additionally, dimensionalityreduction methods, such as principal component analysis (PCA) and lineardiscriminant analysis (LDA), may also be implemented.

The static inputs may include club-equipment data 204, ball-equipmentdata 206, and player data 208. Static inputs are characteristics that donot change during a golf swing or shot, such as characteristics of thegolf equipment used or the golfer. Static inputs may be received throughmanual entry or automatically detected, as discussed above. Theclub-equipment data 204 and the ball-equipment data 206 describegolf-equipment characteristics of the golf club and golf ball that areto be used for an upcoming golf shot. The club-equipment data 204 mayinclude characteristics of the golf club used by the golfer to hit agolf shot, such as club head model, club head lie, club head loft, clubhead adjustable settings, club head grind, club head bounce, shaft flex,shaft length, shaft torque, and/or grip size. The ball-equipment data206 may include characteristics of the golf ball used by the golfer tohit the golf shot, such as golf ball model, golf ball compression, golfball cover material, an/or golf ball number of layers. The player dataincludes golfer characteristics for the golfer hitting the golf shot.The player data 208 may include characteristics of the golfer that hitthe golf shot, such as gender, height, weight, age, handicap,handedness, arm length, and/or hand size.

The dynamic inputs may include swing data 212, ball-flight data 214,force data 216, motion-capture data 218, and electromyography data 212.In general, dynamic inputs about golf shots are inputs that aregenerated from one or more of the performance tracking devices. Forexample, the performance tracking devices track or monitor the swing ofthe golf club as the golfer swings the club. The performance trackingdevices may also track or monitor the flight of the golf ball whenstruck by the golf club. The swing data 212 may include club speed,attack angle, path, dynamic loft, face angle, droop, face and loft spin,and/or impact location. The swing data may be captured from a swingtracker. The ball-flight data 214 may include ball speed, launch angle,azimuth angle, spin characteristics (back spin, side spin, and/or riflespin), carry distance, roll distance, total distance, maximum height,and/or trajectory characteristics. The ball-flight data 214 may becaptured from a flight tracker.

Force data 216 may include characteristics of the force exerted by thegolfer during a swing including characteristics regarding vertical forceleft foot, vertical force right foot, vertical weight shift, verticalforce magnitude, toe force, heel force, torque right foot, torque leftfoot, torque, center of pressure, center mass, and/or moment arm. Theforce data 216 may be captured from player monitors, such as forceplates and/or insole sensors. The force data 216 may also include thoseforces applied by the player on the equipment including shaft forces orrates of loading. The motion-capture data 218 may includecharacteristics of the motion of the golfer during a swing, includingcharacteristics regarding at least one of wrist rotation, hip angle, hiptranslation, torso angle, torso translation, spine rotation, and/orupper body position. The motion-capture data 218 may be captured fromplayer monitors, such as motion-capture devices and wearable devices.The electromyography data 220 may include characteristics of theelectrical activity of the muscles of the golfer during a swingincluding characteristics regarding leg muscle group electromyographydata, torso muscle group electromyography data, arm muscle groupelectromyography data, integrated electromyography data, root-meansquare electromyography data, peak amplitude electromyography data,and/or median power frequency electromyography data.

Based on the received static inputs 202 and the received dynamic inputs210 for a golfer and one or more golf swings by the golfer, themachine-learning model 222 generates predicted golf equipment 222 forthe golfer. The predicted golf equipment 224 is the golf equipment thatis recommended for the golfer based on the static inputs 202 and thedynamic inputs 210. The predicted golf equipment 224 includes predictedgolf club properties 226 and/or predicted golf ball properties 228. Thepredicted golf club properties 226 includes a predicted golf club, or acharacteristic of the predicted golf club, that is best suited for thegolfer. For example, the predicted golf club properties 226 may includeclub head model, club head lie, club head loft, club head adjustablesettings, club head grind, club head bounce, shaft flex, shaft length,shaft torque, and/or grip size. The predicted golf ball properties 228include a predicted golf ball, or characteristic(s) of the predictedgolf ball, that is best suited for the golfer. For example, predictedgolf club properties 226 may include a golf ball model, a golf ballcompression, a golf ball cover material, and/or a golf ball number oflayers. The predicted equipment 224 generated by the machine-learningmodel 222 may be delivered to the golfer through multiple differenttechniques. For instance, the predicted equipment 224 may be presentedon a display that is part of a golf-equipment identification system. Thepredicted equipment 224 may also be sent to a device of the golfer viaemail, text, or other electronic means.

In some examples, the machine-learning model 222 may also be trained tomatch a golfer to the closest professional golfer, such a PGA TourProfessional. For instance, the machine-learning model 222 may trainedbased on a set of static inputs 202 and dynamic inputs 210 for aparticular tour professional. The output used for training is theidentity of the tour professional for whom the static inputs 202 anddynamic inputs 210 correspond. The training may be performed for aplurality of tour professionals. As such, when a set of live or currentstatic inputs 202 and dynamic inputs 210 are received for a golferduring a fitting session, the machine-learning model 222 is trained todetermine the closest match to a tour professional. The generated outputfrom the machine-learning model 222 is thus the closest tourprofessional to the golfer based on the golfer's static inputs 202 anddynamic inputs 210. The output of the machine-learning model 222 mayalso provide comparison statistics between the golfer's static inputs202 and dynamic inputs 210 and the tour professional's static inputs 202and dynamic inputs 210. The comparison statistics may also includerecommendation for changes to the golfer's swing characteristics to moreclosely match that of the matched tour professional. For example, thecomparison statistics may indicate that the that the golfer's swingpath, swing plane, and angle of attack is similar to that of the matchedtour player, but the tour player has a better dynamic weight shiftpattern. A recommendation may be generated for the golfer to adjust hisor her dynamic weight shift pattern to more closely match that of thematched tour professional.

In addition, the machine-learning model 222 may also generate predictedequipment 224 for the golfer to more closely attain the swing and shotattributes of the tour professional identified by the machine-learningmodel 222. The predicted equipment 224 from the machine-learning model222 may also be based on the equipment used by the matched tourprofessional. For instance, the equipment of the matched tourprofessional may be at least part of the basis for the predictedequipment 224 generated by the machine-learning model 222. The equipmentof the tour professional may be modified for the generated predictedequipment 224 based on differences between the golfer's swingcharacteristics and the tour professional's swing characteristics. Forinstance, if the swing speed of the golfer is less than that of the tourprofessional, the stiffness of the shaft of the golf club in thepredicted equipment 224 may be reduced as compared to the stiffness ofthe shaft of the tour player's golf club.

FIG. 3 depicts an example of a method 300 for training amachine-learning system for identifying golf equipment for an individualgolfer. At operation 302, shot data is aggregated for a plurality ofgolf shots. The shot data may be for a plurality of prior golf shots bya plurality of different golfers. The shot data includes prior staticinputs and prior dynamic inputs for the plurality of golf shots. Theprior static inputs and prior dynamic inputs may include any combinationof the type of static inputs and dynamic inputs discussed above. Theshot data also includes prior golf equipment fitting data that iscorrelated to the prior static inputs and prior dynamic inputs. Thatprior golf equipment fitting data includes at least one of prior golfclub properties or prior golf ball properties that were provided from afitting specialist based on the prior static and dynamic inputs. Forexample, during prior fitting sessions, a fitting specialist may haverecommended golf club properties and/or golf ball properties may havebeen based on a set of static and dynamic inputs. Those recommended orpredicted golf club properties and/or golf ball properties are stored orretrieved in a manner such that they remain correlated to the set ofstatic and dynamic inputs on which they were based. Those recommended orpredicted golf club properties and/or golf ball properties may be anycombination of the types of predicted golf club properties and/or golfball properties discussed above.

At operation 304, the shot data is separated into N data sets. Forexample, the shot data may be randomly separated into separate datasetsthat each have approximately the same amount of data in each data set.At operation 306, a first portion of the data sets may be set as atraining data set and another portion of the data sets may be set as atest data set. As an example, the training data set may be N−1 of theseparated datasets. The remaining data set may then be used the testdata set. Other combinations of data sets are also possible for use as atraining and a test data set.

At operation 308, initial model parameters for a machine-learning modelmay be set. For instance, where the machine-learning model is neuralnetwork, initial values for weights and biases may be set. The initialvalues for the weights and biases may be set based on a randomizationfunction or process. In addition, a particular activation function maybe set. As some examples, the activation function may be the sigmoidfunction, the tanh function, or the RELU function, among other potentialoptions. Other potential parameters of the neural network may also beset with an initial value or type if desired.

Other types of machine-learning models may also be used, as discussedabove. The respective parameters of those other machine-learning modelsmay also be initialized at operation 308. For example, a support vectormachine (SVM) may be used rather than a neural network. Model parametersof an SVM include parameters such as auto scaling, box constraint,kernel cache limit, kernel function (including linear, quadratic,polynomial, Gaussian radial basis function, multi-layer perceptron, orother similar functions), Karush-Kuhn-Tucker conditions, methods toseparate hyperplanes (including quadratic, sequential minimaloptimization, least squares, or other optimization methods), parametersof a multi-layer perceptron (if applicable to the kernel), polynomialorder (if applicable to the kernel), and a scaling factor to a radialbasis function.

At operation 310, the machine-learning model is trained with trainingdata set. For example, operation 310 may include executing a supervisedtraining of the machine-learning model based on the training data set.As an example where the machine-learning model is a neural network, thetraining may include providing the static inputs and dynamic inputs ofthe training data set as inputs to the machine-learning model. Thestatic inputs and dynamic inputs are forward propagated through theneural network to produce an output. That output may then be compared tothe corresponding prior golf equipment fitting data that is known to thedesired result or ground truth. A cost function may then be calculatedto reflect the difference between the produced output of the neuralnetwork as compared to the ground truth (i.e., the corresponding priorgolf equipment fitting data). Back propagation through the neuralnetwork may then be performed to determine gradients of the costfunction, which can be used to update or adjust the parameters of theneural network. Forward and back propagation may then be repeated withshot data within the training data set until the cost function isminimized or reduced to a desired and/or predetermined limit ortolerance. Other training methods and training variations for trainingneural networks may also be implemented. Where the machine-learningmodel is other than a neural network, suitable training techniques maybe implemented based on the training data set. For instance, where themachine-learning model is an SVM, training is similar to that of aneural network in that supervised training may also be executed by usingthe prior static and dynamic inputs as inputs for the SVM duringtraining and using the corresponding prior golf equipment fitting dataas the known output.

At operation 312, the machine-learning model as trained in operation 310is tested with the test data set that was set in operation 306. Testingthe machine-learning model may include providing the prior static anddynamic inputs as input to machine-learning model to produce an outputin the form of test results. Those test results may then be compared thecorresponding prior golf equipment fitting data, such as recommendedgolf equipment from a fitting specialist, that is correlated with theprior static and dynamic inputs used as input for testing themachine-learning model. Based on the comparison, a difference such ascost function, between the output produced and the corresponding priorgolf equipment fitting data may be determined as part of the testing inoperation 312. The determined difference is representative of theaccuracy of the machine-learning model.

At operation 314, a determination may then be made as to whether theaccuracy is acceptable. Determining if the accuracy is acceptable mayinclude determining that the test results from the machine learningmodule are within a predetermined tolerance. If the accuracy isunacceptable, the method 300 flows to optional operation 316 where themachine-learning model parameters may be further adjusted. For instance,the unacceptable accuracy may be a result of the initial modelparameters that were set for the machine-learning model in operation308. As an example, where the machine-learning model is a neuralnetwork, the activation function selected in operation 308 may haveproduced unacceptable results. In such an example, the activationfunction may be adjusted in operation 316. The method 300 may then flowback to operation 310 where the machine-learning model may be retrainedwith the same training data set, but with the adjusted parameter, suchas an adjusted activation function. In some examples, the method 300 mayinstead flow back to operation 306 where new training and test data setsare set from the aggregated shot data. Operations 310-314 are thenrepeated for the new training data set and the new test data set.Operation 308 may be omitted where the parameters had already been setfor the previous training of the machine-learning model. In someexamples, operation 316 may be omitted and method 300 may flow directlyback to operation 306, where new training and test data sets are setfrom the aggregated shot data, or operation 310, where training isfurther performed with the current training and test data sets. In suchexamples it may be determined that no model parameters need to beadjusted at operation 316. Rather, different training and test data setsare to be used to further improve the accuracy of the machine-learningmodel.

If the accuracy is determined to be acceptable at operation 314, themethod 300 flows to optional operation 318 where a determination is madeas to whether all the possible combinations of training data sets andtest data sets of the N data sets of the aggregated shot data have beenused to train and test the machine-learning model. If not allcombinations have been tested, the method flows back to operation 306,where a new, previously unused combination of training and test datasets are set from N data sets. Operations 310-318 are then repeated forthe new training data set and the new test data set. Operation 308 maybe omitted where the parameters had already been set for the previoustraining of the machine-learning model. If, at operation 318, allcombinations of training and test data have been tested, the method 300flows to operation 320 where the trained machine-learning model isstored. In some examples, operation 318 may be omitted. For instance, ifthe accuracy is determined to be acceptable at operation 314, additionalcombinations may not be used for additional training. The stored,trained machine-learning model may then be used to generate predictedgolf equipment properties from live or current static and dynamicinputs.

In some examples, the method 300 may also be used to train themachine-learning model to match a golfer to the closest professionalgolfer, such a PGA Tour Professional. The operations in method 300 wouldbe similar as discussed above. For instance, at operation 302, aplurality of shot data for a plurality of tour professionals may beaggregated. That shot data may include prior static inputs and priordynamic inputs for the plurality of golf shots from the differentprofessionals. The corresponding output, or ground truth, for that shotdata, however, is the identity of a particular tour professional forwhich the shot data is associated. That is, the ground truth fortraining the machine-learning model is the name, or other identifyingfeatures, of a tour professional. For example, when the static anddynamic inputs are collected for a set of golf swings by a tourprofessional, the identity of that tour professional is also stored ascorrelated with the respective static and dynamic inputs from the tourprofessional. The aggregated shot data may be separated into N data setsat operation 304 and training and test data sets may be set in operation306, similar to how such operations were described above. Also similarto the operations described above, initial machine-learning modelparameters may be set in operation 308 and the machine-learning modelmay be trained with the training data set in operation 310. The trainedmodel may also be tested in operation 312, and a determination as towhether the accuracy is acceptable may be determined in operation 314.The accuracy determination may be based on whether the machine-learningmodel accurately identifies a tour professional based on a test set ofstatic and dynamic inputs. The method 300 may also flow from accuracydetermination in operation 314 to either adjust model parameters inoperation 316, or otherwise continue with training, or to operation 318where a determination is made as to whether all the combinations of Ndata sets have been used for training. Ultimately, the trainedmachine-learning model is stored at operation 320.

In addition, the shot data for the tour professionals may also be usedto further train a machine-learning model to generate predicted golfclub properties and/or predicted golf ball properties. For example, itmay be presumed that the professional golfer has been precisely fittedto the correct golf equipment. As such, the tour professional'sequipment may be used as a heavily weighted ground truth for the staticand dynamic inputs of the corresponding tour professional.

FIG. 4 depicts an example of a method 400 for executing a trainedmachine-learning system to identify golf equipment for an individualgolfer. At operation 402, current static input is received for a golferthat is presently participating in a fitting session or preparing to hitgolf shots. For example, the current static input may include a golfercharacteristic and/or a golf-equipment characteristic. The currentstatic input may include any combination of the static inputs identifiedabove. As also discussed above, the current static input may be receivedvia manual entry, automatic detection, or a combination of the two.

At operation 404, a first current dynamic input for a first golf shot,or set of golf shots, that are made without a change to that currentstatic input received at operation 402. For example, a single shot maybe made with a golf club identified in the current static input or aseries of shots may be made with that golf club. The first currentdynamic input received at operation 404 may be for the single shot orfor the series of shots. The first current dynamic input may include anycombination of the dynamic inputs identified above. As also discussedabove, the first current dynamic input may be received from theperformance tracking devices.

At operation 406, a trained machine-learning model is executed based onthe received first current dynamic input and current static input.Executing the trained machine-learning model generates first predictedequipment data, including at least one of first predicted golf clubproperties or first predicted golf ball properties for the golfer. Thetrained machine-learning model has been trained from a set of priordynamic inputs, prior static inputs, and at least one of prior golf clubswing characteristics or prior golf ball flight characteristics. As anexample, the trained machine-learning model may be a machine-learningmodel that was trained using method 300 discussed above and depicted inFIG. 3. At operation 408, the first predicted equipment properties aredisplayed. For instance, at least one of the first predicted golf clubproperties or the first predicted golf ball properties for the golfermay be displayed.

Executing the trained machine-learning model based on the received firstcurrent dynamic input and current static input in operation 406 may alsoinclude generating a closest tour professional to the golfer based onthe golfer's current static input and first current dynamic input. Themachine-learning model may also generate comparison statistics betweenthe golfer's first current dynamic input and current static input andthe tour professional's static inputs and dynamic inputs. As such, thegolfer will be able to identify where, and how, the golfer and thegolfer's swing and shot differ from that of the tour professional. Inaddition, the machine-learning model may also generate predictedequipment for the golfer to more closely attain the swing and shotattributes of the tour professional. For example, a recommendation mayinclude that the golfer should use the equipment that the identifiedtour professional uses. Additional recommendations may also be generatedfor instructing the golfer on how to change the golfer's swing to moreclosely match that of the identified tour professional. These generatedoutputs may also be displayed in operation 408.

The trained machine-learning model may also be reinforced based onadditional inputs or feedback in optional operations 410 and 412. Atoperation 410, feedback regarding the first predicted equipmentproperties is received. The feedback may be received via an input deviceof the golf equipment identification system. The feedback may eitherconfirm or reject the first predicted equipment properties. For example,a fitting specialist or the golfer may review the first predictedequipment properties to determine if those predicted equipmentproperties are accurate based on their experience. If the firstpredicted equipment properties are determined to be accurate, thefeedback may be in the form of a confirmation input that confirms thefirst predicted golf club properties and/or the first predicted golfball properties. If the first predicted equipment properties aredetermined to be inaccurate, the feedback may be in the form of arejection input that rejects the first predicted golf club propertiesand/or the first predicted golf ball properties. Where the feedback is arejection, the feedback may also include adjusted first predicted golfclub properties and/or adjusted first predicted golf ball propertiesthat the fitting specialist deems accurate.

At operation 412, the feedback received in operation 410 is used toreinforce the trained machine-learning model. For instance, where thefeedback is a confirmation input, the trained machine-learning model ispositively reinforced. Where the feedback is a rejection input, thetrained machine-learning model is negatively reinforced and the adjustedfirst predicted golf club properties and/or adjusted first predictedgolf ball properties may be used to further tune or train the trainedmachine-learning model. The reinforcement training of the trainedmachine-learning model may also be based on the current static input,the first current dynamic input, the first predicted golf clubproperties, and/or the first predicted golf ball properties.

In some examples, upon receiving the first predicted equipmentproperties, the golfer may take several shots with the predictedequipment properties to receive further equipment predictions and/orconfirm the first predicted equipment properties are well-suited for thegolfer. In such examples, method 400 flows to operation 414, where thecurrent static input is updated based on the first predicted equipmentproperties. For instance, the golf-equipment characteristic of thecurrent static input is updated to match the first predicted equipmentproperties as the golfer is now using golf equipment having suchproperties.

At operation 416, a second current dynamic input for an additional orsecond golf shot, or set of golf shots, are made with golf equipmentthat matches the updated current static input updated at operation 414.For example, a single shot may be made with a golf club and/or ballidentified in the updated current static input or a series of shots maybe made with that golf club and/or ball. The additional or secondcurrent dynamic input received at operation 416 may be for the singleshot or for the series of shots. The second current dynamic input mayinclude any combination of the dynamic inputs identified above. As alsodiscussed above, the second current dynamic input may be received fromthe performance tracking devices.

At operation 418, the trained machine-learning model is executed basedon the received additional or second current dynamic input and theupdated current static input. Executing the trained machine-learningmodel generates new or second predicted equipment data, including new orsecond predicted golf club properties and/or new or second predictedgolf ball properties for the golfer. At operation 420, the new or secondpredicted equipment properties are displayed. For instance, at least oneof prior golf club swing characteristics or prior golf ball flightcharacteristics may be displayed. Executing the trained machine-learningmodel based on the received second current dynamic input and the updatedcurrent static input in operation 418 may also include generating aclosest tour professional to the golfer based on the golfer's secondcurrent dynamic input and the updated current static input. Themachine-learning model may also generate comparison statistics betweenthe golfer's second current dynamic input and the updated current staticinput and the tour professional's static inputs and dynamic inputs. Inaddition, the machine-learning model may also generate predictedequipment for the golfer to more closely attain the swing and shotattributes of the tour professional. Additional recommendations may alsobe generated for instructing the golfer on how to change the golfer'sswing to more closely match that of the identified tour professional.Additional data regarding whether the golfer is getting closer orfurther from the tour professional between the first set of golf shotsand the second set of golf shots may also be generated. These generatedoutputs may also be displayed in operation 420.

Reinforcement of the trained machine-learning model may again happen atoptional operations 422 and 424. At operation 422, feedback regardingthe second predicted equipment properties is received. The feedback maybe received via an input device of the golf equipment identificationsystem, and the feedback may either confirm or reject the secondpredicted equipment properties. For example, a fitting specialist or thegolfer may review the second predicted equipment properties to determineif those predicted equipment properties are accurate based on his/herexperience. If the second predicted equipment properties are determinedto be accurate, the feedback may be in the form of a confirmation inputthat confirms the second predicted golf club properties and/or thesecond predicted golf ball properties. If the second predicted equipmentproperties are determined to be inaccurate, the feedback may be in theform of a rejection input that rejects the second predicted golf clubproperties and/or the second predicted golf ball properties. Where thefeedback is a rejection, the feedback may also include adjusted secondpredicted golf club properties and/or adjusted second predicted golfball properties that the fitting specialist deems accurate.

At operation 424, the feedback received in operation 422 is used toreinforce the trained machine-learning model. For instance, where thefeedback is a confirmation input, the trained machine-learning model ispositively reinforced. Where the feedback is a rejection input, thetrained machine-learning model is negatively reinforced and the adjustedsecond predicted golf club properties and/or adjusted second predictedgolf ball properties may be used to further tune or train the trainedmachine-learning model. The reinforcement training of the trainedmachine-learning model may also be based on any combination of thereceived current static input, the updated current static input, thefirst current dynamic input, the second current dynamic input, the firstpredicted golf club properties, the second predicted golf properties,the first predicted golf ball properties, or the second predicted golfball properties.

Operations 414-424 may then repeat using the second predicted equipmentproperties to update the static input. Those operations may alsocontinually repeat for future or different predictions as well. Inaddition, while the method 400 is generally discussed with reference totwo sets of golf shots, on will appreciate the present technology may beused for a variety of different golf shots using different golfequipment to produced predicted golf equipment.

Many of the embodiments described herein may be employed using software,hardware, or a combination of software and hardware to implement andperform the systems and methods disclosed herein. Although specificdevices have been recited throughout the disclosure as performingspecific functions, one of skill in the art will appreciate that thesedevices are provided for illustrative purposes, and other devices may beemployed to perform the functionality disclosed herein without departingfrom the scope of the disclosure.

This disclosure describes some embodiments of the present technologywith reference to the accompanying drawings, in which only some of thepossible embodiments were shown. Other aspects may, however, be embodiedin many different forms and should not be construed as limited to theembodiments set forth herein. Rather, these embodiments were provided sothat this disclosure was thorough and complete and fully conveyed thescope of the possible embodiments to those skilled in the art. Oneshould appreciate that the present technology captures physical signals,such as electromagnetic waves in the infrared, visible, and/orradio-frequency spectrum, and transforms those physical signals intodigital data capable of being stored in memory and processed by one ormore processors. Further, as used herein and in the claims, the phrase“at least one of element A, element B, or element C” is intended toconvey any of: element A, element B, element C, elements A and B,elements A and C, elements B and C, and elements A, B, and C.

Although specific embodiments are described herein, the scope of thetechnology is not limited to those specific embodiments. One skilled inthe art will recognize other embodiments or improvements that are withinthe scope and spirit of the present technology. Therefore, the specificstructure, acts, or media are disclosed only as illustrativeembodiments. The scope of the technology is defined by the followingclaims and any equivalents therein.

What is claimed is:
 1. A system for identifying golf equipment, thesystem comprising: one or more performance tracking devices, wherein theone or more performance tracking devices include at least one of anoptical sensor system or a radar sensor system for tracking at least oneof a golf club swing or a golf ball flight, wherein the one or moreperformance tracking devices are configured to generate at least one ofgolf club swing characteristics of the golf club swing or golf ballflight characteristics of the golf ball flight; a display operativelyconnected to the one or more performance tracking devices; at least oneinput device for receiving static input; and at least one processor andmemory operatively connected to the one or more performance trackingdevices, the display, and the at least one input device, the memorystoring instructions that, when executed by the at least one processor,cause the system to perform a set of operations comprising: receive,from the one or more performance tracking devices, first current dynamicinput for a first golf shot from a golfer, wherein the first currentdynamic input includes the at least one of the golf club swingcharacteristics or the golf ball flight characteristics for the firstgolf shot; receive, via the at least one input device, current staticinput for the golfer, wherein the current static input is at least oneof a golfer characteristic or a golf-equipment characteristic; execute atrained machine-learning model based on the received first currentdynamic input and current static input to generate at least one of firstpredicted golf club properties or first predicted golf ball propertiesfor the golfer, wherein the trained machine-learning model has beentrained from a set of prior dynamic inputs, prior static inputs, and atleast one of prior golf club swing characteristics or prior golf ballflight characteristics; display, on the display, the at least one of thefirst predicted golf club properties or the first predicted golf ballproperties for the golfer; receive, via the at least one input device, aconfirmation input confirming one or more of the first predicted golfclub properties or the first predicted golf ball properties; andreinforce the trained machine-learning model based on the confirmationinput.
 2. The system of claim 1, wherein the one or more performancetracking devices include at least one of a swing tracker or aball-flight tracker.
 3. The system of claim 1, wherein the currentstatic input includes the golfer characteristic, wherein the golfercharacteristic includes at least one of gender, height, weight, age,handicap, handedness, arm length, or hand size.
 4. The system of claim1, wherein the current static input includes the golf-equipmentcharacteristic, wherein the golf-equipment characteristic includes atleast one of club head model, club head lie, club head loft, club headadjustable settings, club head grind, club head bounce, shaft flex,shaft length, shaft torque, grip size, golf ball model, golf ballcompression, golf ball cover material, or golf ball number of layers. 5.The system of claim 1, wherein the first current dynamic input includesgolf club swing characteristics, the golf club swing characteristicsincluding at least one of swing data of the golf club, force data,motion-capture data, or electromyography data.
 6. The system of claim 5,wherein: the swing data of the golf club includes at least one of clubspeed, attack angle, path, dynamic loft, face angle, droop, face andloft spin, or impact location; the force data includes at least one ofvertical force left foot, vertical force right foot, vertical weightshift, vertical force magnitude, toe force, heel force, torque rightfoot, torque left foot, torque, center of pressure, center mass, ormoment arm; the motion-capture data includes at least one of wristrotation, hip angle, hip translation, torso angle, torso translation,spine rotation, or upper body position; and the electromyography dataincludes at least one of leg muscle group electromyography data, torsomuscle group electromyography data, arm muscle group electromyographydata, integrated electromyography data, root-mean squareelectromyography data, peak amplitude electromyography data, or medianpower frequency electromyography data.
 7. The system of claim 6, whereinthe golf club swing characteristics include the swing data of the golfclub, the force data, and the motion-capture data.
 8. The system ofclaim 1, wherein the set of operations further comprises: receive, fromthe one or more performance tracking devices, second current dynamicinput for a second golf shot from a golfer, wherein the second shot fromthe golfer is with at least one of a golf club having the firstpredicted golf club properties or a golf ball having the first predictedgolf ball properties; update the current static input for the golferbased on the at least one of the golf club having the predicted golfclub properties or the golf ball having the first predicted golf ballproperties; execute the trained machine-learning model based on thereceived second current dynamic input and the updated current staticinput to generate at least one of second predicted golf club propertiesor second predicted golf ball properties for the golfer; and display, onthe display, the at least one of the second predicted golf clubproperties or the second predicted golf ball properties for the golfer.9. The system of claim 8, wherein reinforcing the trainedmachine-learning model is further based on the at least two or more ofthe received current static input, the updated current static input, thefirst current dynamic input, the second current dynamic input, the firstpredicted golf club properties, the second predicted golf properties,the first predicted golf ball properties, or the second predicted golfball properties.
 10. The system of claim 9, wherein the set ofoperations further comprises: receive, via the at least one inputdevice, rejection input rejecting one or more of the second predictedgolf properties, or the second predicted golf ball properties; andreinforce the trained machine-learning model based on the rejectioninput.
 11. The system of claim 1, wherein the input device is atouchscreen of the display.
 12. A method, executed by one or moreprocessors, for identifying golf equipment, the method comprising:receiving static input, via an input device operatively connected to theone or more processors, wherein the static input is at least one of agolfer characteristic or a golf-equipment characteristic; receiving,from one or more performance tracking devices, first current dynamicinput for a first golf shot from a golfer, wherein the first currentdynamic input includes at least one of golf club swing characteristicsor golf ball flight characteristics for a first golf shot from thegolfer; executing, by the one or more processors, a trainedmachine-learning model based on the received first current dynamic inputand static input to generate at least one of first predicted golf clubproperties or first predicted golf ball properties for the golfer,wherein the trained machine-learning model has been trained from a setof prior dynamic inputs, prior static inputs, and at least one of priorgolf club swing characteristics or prior golf ball flightcharacteristics; displaying, on a display operatively connected to theone or more processors, the at least one of the first predicted golfclub properties or the first predicted golf ball properties for thegolfer; receiving, via the input device, a rejection input rejecting oneor more of the first predicted golf club properties or the firstpredicted golf ball properties; and reinforcing the trainedmachine-learning model based on the rejection input and at least one ofthe static input and the first current dynamic input.
 13. The method ofclaim 12, wherein the method further comprises: receiving, from the oneor more performance tracking devices, second current dynamic input for asecond golf shot from the golfer, wherein the second shot from thegolfer is with at least one of a golf club having the first predictedgolf club properties or a golf ball having the first predicted golf ballproperties; updating, by the one or more processors, the static inputfor the golfer based on the at least one of a golf club having thepredicted golf club properties or the golf ball having the firstpredicted golf ball properties; executing, by the one or moreprocessors, the trained machine-learning model based on the receivedsecond current dynamic input and the updated static input to generate atleast one of second predicted golf club properties or second predictedgolf ball properties for the golfer; and displaying, on the display, theat least one of the second predicted golf club properties or the secondpredicted golf ball properties for the golfer.
 14. The method of claim12, wherein: the golfer characteristic includes at least one of gender,height, weight, age, handicap, handedness, arm length, or hand size; thegolf-equipment characteristic includes at least one of club head model,club head lie, club head loft, club head adjustable settings, club headgrind, club head bounce, shaft flex, shaft length, shaft torque, gripsize, golf ball model, golf ball compression, golf ball cover material,or golf ball number of layers; and the golf club swing characteristicsinclude at least one of swing data of the golf club, force data,motion-capture data, or electromyography data, wherein: the swing dataof the golf club includes at least one of club speed, attack angle,path, dynamic loft, face angle, droop, face and loft spin, or impactlocation; the force data includes at least one of vertical force leftfoot, vertical force right foot, vertical weight shift, vertical forcemagnitude, toe force, heel force, torque right foot, torque left foot,torque, center of pressure, center mass, or moment arm; themotion-capture data includes at least one of wrist rotation, hip angle,hip translation, torso angle, torso translation, spine rotation, orupper body position; and the electromyography data includes at least oneof leg muscle group electromyography data, torso muscle groupelectromyography data, arm muscle group electromyography data,integrated electromyography data, root-mean square electromyographydata, peak amplitude electromyography data, or median power frequencyelectromyography data.
 15. The method of claim 12, wherein the trainedmachine-learning model generates an identification of a tourprofessional that most closely matches the received static input andfirst current dynamic input.
 16. The method of claim 12, wherein thetrained machine-learning model based generates the first predicted golfclub properties and first predicted golf ball properties for the golfer.17. A method, executed by one or more processors, for training amachine-learning system to identify golf equipment, the methodcomprising: aggregating shot data for a plurality of golf shots, whereinthe shot data includes: prior static inputs and prior dynamic inputs forthe plurality of golf shots; and prior golf equipment fitting datacorrelated to the prior static inputs and prior dynamic inputs, whereinthe golf equipment fitting data includes at least one of prior predictedgolf club properties or prior predicted golf ball properties; separatingthe aggregated shot data into a training data set and a test data set;executing a supervised training of a machine-learning model based on thetraining data set; testing the trained machine-learning model with thetest data set to generate test results; determining that the testresults from the trained machine-learning model are within apredetermined tolerance; based on the determination that the testresults are within a predetermined tolerance, storing the trainedmachine-learning model; receiving current static input for a live golfshot from a golfer; receiving current dynamic input for the live golfshot from a golfer, wherein the current dynamic input includes the atleast one of golf club swing characteristics or golf ball flightcharacteristics for the live golf shot; executing the trainedmachine-learning model based on the received current dynamic input andcurrent static input to generate at least one of predicted golf clubproperties or predicted golf ball properties for the golfer; anddisplaying the at least one of the predicted golf club properties or thepredicted golf ball properties for the golfer.
 18. The method of claim13, wherein the method further comprises: receiving, via the inputdevice, a confirmation input confirming one or more of the secondpredicted golf club properties or the second predicted golf ballproperties; and reinforcing the trained machine-learning model based onthe confirmation input.